package bb.lanxing.util;

import static android.content.Intent.FLAG_GRANT_READ_URI_PERMISSION;
import static android.content.Intent.FLAG_GRANT_WRITE_URI_PERMISSION;

import static bb.lanxing.common.config.Constants.FILE_PROVIDER;

import android.content.Context;
import android.content.Intent;
import android.net.Uri;

import androidx.core.content.FileProvider;

import java.io.File;

public class FileProviderUtil {
    public static Uri getUriForFile(Context context, File file) {
        return getUriForFile24(context, file);
    }

    public static Uri getUriForFile24(Context context, File file) {
        return FileProvider.getUriForFile(context, FILE_PROVIDER, file);
    }

    public static void setIntentDataAndType(Context context, Intent intent, String str, File file, boolean z) {
        intent.setDataAndType(getUriForFile(context, file), str);
        intent.addFlags(FLAG_GRANT_READ_URI_PERMISSION);
        if (z) {
            intent.addFlags(FLAG_GRANT_WRITE_URI_PERMISSION);
        }
    }

    public static void setIntentDataAndType(Intent intent, String str, Uri uri, boolean z) {
        intent.setDataAndType(uri, str);
        intent.addFlags(FLAG_GRANT_READ_URI_PERMISSION);
        if (z) {
            intent.addFlags(FLAG_GRANT_WRITE_URI_PERMISSION);
        }
    }
}
